package cn.shujuhai.common.service;


import cn.shujuhai.common.domain.SysRole;
import cn.shujuhai.common.pluging.data.ResultVo;
import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;

import java.util.List;

/**
 * @author NiuYaHu
 * @description 针对表【sys_role(角色表)】的数据库操作Service
 * @createDate 2024-10-17 14:37:55
 */
public interface SysRoleService extends IService<SysRole> {

    ResultVo<PageInfo<SysRole>> getSysRolePageInfo(String roleName, String roleCode, Integer page, Integer pageSize);

    ResultVo<SysRole> selectById(Integer roleId);

    ResultVo<SysRole> removeId(Integer roleId);

    ResultVo<SysRole> enable(Integer roleId);

    ResultVo<?> saveRolePermission(SysRole sysRole);

    List<Long> getPermissionIdsByRoleId(Long roleId);

    ResultVo<SysRole> updateRole(SysRole sysRole);

    List<Long> getChannelIdsByRoleId(Long roleId);

    List<Long> getInfoIdsByRoleId(Long roleId);

    List<?> getUserIdByRoleId(Long roleId);

    ResultVo<?> getRoleList();

    ResultVo<?> getDepartmentRoleList();
}
